// 主题样式配置文件
const themes = {
  dark: {
    '--main-bg': '#17181a',
    '--main-darken-bg': '#dfdfdf',
    '--box-bg': '#2d2e30',
    '--icon-color': '#8a8c90',
    '--icon-active-color': '#1989fa',
    '--font-color': '#eef0f4',
    '--font-active-color': '#ff6c6c',
    '--shadow': '#cbcfd1'
  },
  light: {
    '--main-bg': '#f3f3f3',
    '--main-darken-bg': '#dfdfdf',
    '--box-bg': '#fff',
    '--icon-color': '#6f757c',
    '--icon-active-color': '#1989fa',
    '--font-color': '#000',
    '--font-active-color': '#ff6c6c',
    '--shadow': '#cbcfd1'
  }
}
const user = {
  state () {
    return {
      themes,
      history: [], // 搜索记录
      theme: 'light', // 网站主题
      bookshelf: [], // 书架内容和设置
      currentRead: {
        locate: 0 // 阅读位置
      }, // 当前阅读的小说章节
      bookshelfSet: {
        backgroundColor: 'var(--box-bg)',
        fontSize: '14px',
        currentPageTurn: 0,
        transform: 'translateX(5px)',
        transition: 'all .2s ease-in-out'
      } // 书架的设置
    }
  },
  mutations: {
    HISTORY :(state, val) => {
      if (!val){
        let history = localStorage.getItem('searchHistory') || '[]'
        history = JSON.parse(history)
        if (Array.isArray(history)){
          state.history = history
        }
      } else {
        const history = state.history
        if (history.indexOf(val) === -1){
          history.push(val)
        }
        localStorage.setItem('searchHistory', JSON.stringify(history))
      }
    },
    // 持久化存储和获取
    LOCAL :(state, obj) => {
      const key = Object.keys(obj)[0]
      const value = obj[key]
      // 没有传值,代表获取本地值存入Vuex
      if (!value) {
        let localValue = localStorage.getItem(key)
        if (!localValue) {
          console.log(state[key])
          localStorage.setItem(key, JSON.stringify(state[key]))
        } else {
          localValue = JSON.parse(localValue)
          state[key] = localValue
        }
      } else {
        localStorage.setItem(key, JSON.stringify(value))
        state[key] = value
      }
    }

  },
  actions: {

  },
  getters: {

  }
}
export default user
